草庐IT

java - 高效的 Minkowski 和计算

全部标签

javascript - 标志位计算和检测

在我正在处理的一些代码中,我应该处理十个独立的参数,它们可以采用两个值之一(0或1)。这会创建2^10个不同的条件。有些情况永远不会发生,可以忽略不计,但确实发生的情况仍然很多,并且制作一个switch来处理所有情况是疯狂的。我想使用10个if语句而不是一个巨大的switch。为此,我知道我应该使用标志位,或者更确切地说是标志字节,因为语言是javascript,它更容易使用10字节字符串来表示10位二进制文​​件。现在,我的问题是,我不知道如何实现它。我在API中看到过这种用法,其中使用数字1、2、4、8、...、n^(n-1)公开了多个optional,它们是1的十进制等价物,二进

JavaScript:如何在不替换对象的情况下高效地替换对象的所有值

我将许多对象收集在一个数组中。由于各种原因,相同的对象也附加到某些DOM元素。有时我需要更新其中一个对象。最简单的方法是在数组中找到与我通过AJAX获得新值的对象具有相同id属性的对象,然后替换它。但这当然会创建一个新对象,并且附加到DOM元素的对象不再相同。这意味着如果我比较它们,它们将不再是同一个对象。如何在不替换实际对象的情况下用新对象中的值最简单地替换正确的对象?(以便引用保持不变)我不想要的例子varvalues=[{id:1,name:'Bob'},{id:2,name:'Alice'},{id:3,name:'Charlie'}];varbar=values[2];con

java - 有效地在不同的虚拟机之间复制对象

我觉得我要问一个“愚蠢”的问题,但我必须问...我有2个虚拟机。我想将一个对象的实例从一个复制到另一个,是否可以在VM的堆中复制表示此对象的位,将其发送到另一个VM,就像另一个VM只需要在它的内存中分配这些位并在它的堆栈中添加一个引用到这个内存插槽...?目前,为了做这样的事情,我们序列化对象并反序列化它,这比按原样复制实例效率低得多(在计算方面)...解析是一种计算浪费...JS序列化示例:每个VM都是V8的一个实例(JavaScript),一种方法是将对象转换为JSON(JSON.stringify),将它发送到另一个VM,后者获取字符串并将其转换回对象(例如varmyObject

javascript - 有没有比这更简单的方法来计算扑克中的顺子?

我有一个算法来计算德州扑克中玩家的手牌是否是顺子。它工作正常,但我想知道是否有一种不涉及数组/字符串转换等的更简单的方法。这是我所拥有的简化版本。假设玩家拿到一手由52个元素组成的牌值数组:varrawHand=[1,0,0,0,0,0,0,0,0,0,0,0,0,//clubs0,0,0,0,0,0,0,0,0,0,0,0,0,//diamonds0,1,1,0,1,0,0,0,0,0,0,0,0,//hearts0,0,0,1,0,0,0,0,1,0,0,0,0];//spadesA1代表该值槽中的一张牌。上面的牌有2个梅花,没有方block,3个红心,4个红心,6个红心,5个黑桃

javascript - 在 jQuery 中向上遍历最有效的方法是什么

我试图在单击内部嵌套按钮时关闭父容器。在我的UI中——我有许多这样的父容器(我在产品类别页面上呈现我的产品目录的预览窗口)。正如您从我下面的标记中看到的那样——关闭按钮深深地嵌套在DOM中。当用户点击关闭按钮时——我需要隐藏()父Box-1。请记住,我一次最多可以在一个页面上显示100种产品(100盒“Box-1”)。我的标记如下所示:......CLOSE.........我的问题是——我如何最好(并且最有效地)遍历返回DOM以获取“box-1”并发出.hide()方法……这是我现有的代码。$productsResultItems.delegate('.btn-close','cli

javascript - 最高效的阵列洗牌器

这个问题在这里已经有了答案:Howtorandomize(shuffle)aJavaScriptarray?(68个答案)关闭1年前。我怎样才能以最有效的方式打乱数组的值?每个元素只是一个包含HTML的字符串。

java - 在 Java.util.Date 中解析 org.mozilla.javascript.NativeDate

我正在尝试将从使用rhino库评估的JavaScript脚本获取的日期解析为java.util.Date,我可以将org.mozilla.javascript.NativeDate转换为java.util.Date吗?如果使用Context.tostring方法将NativeDate转换为字符串,我将获得以下格式的日期:WedOct12201116:17:59GMT+0200(CEST)如何将此字符串日期表示解析为java.util.Date对象? 最佳答案 在Rhino中使用context.jsToJava(nativeDateO

javascript - 在 mustache.js 模板中做一个简单的计算

是否可以在mustache.js模板中进行计算?我想将一个名为ratio的值乘以固定数量,例如240我的标签是这样的:既然url值显示正确,我感觉一定是计算出了问题。 最佳答案 选项1您可以使用一个函数来做到这一点:模板:代码:Mustache.render(template,{ratio:2,x240Times:function(){returnthis.ratio*240;}});选项2您也可以使用我的分机mustache-wax在模板中使用格式化程序,例如:定义一个接受一个参数的“乘法”格式化程序:Mustache.Forma

javascript - 为什么一些非空字符串在 JavaScript 中的计算结果为 "false"?

根据thistableintheECMAScriptstandard,长度为0的字符串值应评估为bool值false。那么,这些语句如何评估为true?"\t"==false""==false"\n"==false""==false所有这些字符串的长度都大于0。例如:虽然我知道"0"的计算结果为false因为它可以被强制转换为数字0,但我无法解释原因这些字符串是错误的。怎么回事?(显然我可以使用===进行严格比较,但在这种情况下,在我的代码中,我需要松散比较,但是我并不期望非空字符串是被认为是错误的。) 最佳答案 您正在使用松散比较

java - Richfaces 列过滤器 : How to fire an event on intro key

我有一个rich:extendedDataTable并且我正在使用列过滤。我希望在用户输入“intro”键后触发过滤器,但在javascript中没有这样的事件。我想这样做是因为如果我使用诸如onkeyup之类的事件,我会收到太多请求,因此会遇到问题。我正在使用richfaces3.3.0GA和facelets。这是组件: 最佳答案 不幸的是,没有简单的方法来自定义此功能。不过,有一些选项可以使其更有用:-将其放入您的或和你的onkeyup请求将被延迟和分组。参见richfacesdemopage:SettingignoreDupR